1. Field of the Invention
The present invention relates to a communication terminal and a data transmission method therefor. The present invention is applicable to, for example, a Universal Asynchronous Receiver-Transmitter (hereinafter called UART) in a controlling main unit, a method conveniently used by the UART for interrupting the main controlling unit, and asynchronous transmission between the main unit and a slave device with the UART.
2. Description of the Background Art
The UART, like other peripheral devices of a processor, has been evolving as means for efficient asynchronous serial transmission with the purpose of higher speed operation, higher integration and, at the same time, price reduction. Initially, the UART was used as a standalone LSI (Large-Scale Integrator) chip under the product code 8250 introduced by National Semiconductor Corp. U.S., as a low-speed communication device for use on an IBM's AT (Advanced Technologies) compatible personal computers. The chip was installed on an extension board or a mother board. After that, the UART has increased in performance and evolved while maintaining comparability with the software.
In general, the UART is designed on the assumption that the processor is able to transmit data at a speed higher than that of the UART. Giving processor's services to the UART would interrupt the current processing and puts a heavy software load on the processor. The processor, which performs multitasking, must control interrupt processing to give services to the UART. This interrupt puts a load on the processor and delays processing.
Now, with these points in mind and to increase the transmission rate, the NS16550 (registered trademark of National Semiconductor Corp., U.S.) with a 16-byte FIFO (First-In First-Out) buffer is generally used. The FIFO buffer is provided on both sending and receiving sides.
On the other hand, Bluetooth (registered trademark of Ericsson, Sweden) was proposed as handy, versatile radio communication means. This communication standard, initially proposed in 1994 for low-cost, low-power communication between mobile telephones, is now used as the radio card standard for personal computers. A device with the Bluetooth function conforming to this communication standard connects the Bluetooth host controller of the device to the hardware modules over a transport bus and, through this bus, performs internal communication within the device with the Bluetooth interface. This communication is controlled at the HCI (Host Controller Interface) layer, one of Bluetooth protocol stacks. HCI is a data communication interface standard used for Bluetooth. The hardware module sends or receives data, with the antenna, to or from a device in another system to perform radio data transmission.
The host controller has an HCI driver and an HCI transport driver installed. These drivers control the transport bus. More specifically, the HCI transport driver controls the hardware while the HCI driver controls the software. The hardware module has, for example, the HCI transport firmware installed internally. Between the HCI driver and the HCI transport firmware is provided the HCTL layer (Host Controller Transport Layer) that includes the HCI transport driver. The HCI transport driver controls operation to allow not only the UART but also RS (Recommended Standard)-232C, USB (Universal, Serial Bus), PCMCIA (Personal Computer Memory Card International Association) PCI (Peripheral Component Interconnect), and so forth to be used.
The Bluetooth Radio, the radio communication specifications defined by the Bluetooth communication standard, uses 2.4 GHz ISM (Industrial Scientific Medicine) band to perform communication of spread spectrum system. The maximum effective data transmission rate of this communication is 723 kbps during asymmetrical transmission. Because the maximum asynchronous data transmission rate is about 1.4 μsec/bit, it takes 14 microseconds to transmit 10 bits of data.
When communicating data, for example, through the UART in the Bluetooth configuration described above, the processor interrupted causes the delay of about 20 microseconds. Therefore, data communication is restored after interrupted and following processing, is performed after this delay.
As described above, the UART uses the NS16550 (registered trademark) LSI with a 16-byte FIFO buffer for high-speed communication in order to prevent data from being lost. Because 8-bit (one-byte) data is preceded by the one-bit start bit and followed by the one-bit stop bit, 10 bits are sent per 8-bit data. Calculating the FIFO buffering time of one-byte data considering these bits gives about 220 microseconds of buffering time.
During communication performed by a device with the Bluetooth function through the UART that involves the interrupt, about 10% of the buffering time is used for the interrupt. The higher the asynchronous transmission rate, the shorter the buffering time and the longer the delay time caused by interrupt. This delay time will become so long that it cannot be neglected and, in the future, the delay time will be a problem in data communication.
The speed of radio communication between Bluetooth devices during Bluetooth asynchronous transmission is 723 kbps. UART asynchronous transmission is defined by the standard for cable transmission between a host personal computer and a Bluetooth host controller. For example, for above-described 10-bit serial communication using the UART that supports data communication at 921.6 kbps, the maximum effective transmission rate is lower than 723 kbps. Therefore, for radio communication at the maximum communication speed on a device with the Bluetooth function, higher-speed UART asynchronous transmission is required.